import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_base/18_name_route/fristPage.dart';

import '../routes/routes.dart';

/// 命名路由传参
///

class Namedroute1 extends StatelessWidget {
  Namedroute1({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Name route1',
      home: const FristPage(),
      onGenerateRoute: onGenerateRoute,
    );
  }
}

void main() {
  runApp(Namedroute1());
}

/// 总结下使用介绍 Named route命名路由参数
/// 使用命名路由参数，他最后会统一走MaterialApp的onGenerateRoute方法，所以在
/// 该方法onGenerateRoute去对路由参数进行过滤，设置传递参数和没有参数的设置
/// setting.name 获取的当前路由的路由名，是字符串类型的，类似'/firstpage'类似这样类型
/// 有一个注意点，对于要跳转的widget,要设置对应的属性来接受这个参数，滴入跳转的
/// 界面设置一个 mymodel，那么对应的onGenerateRoute可以传递
///       final Route route = MaterialPageRoute(builder: (context) {
///                return pageRouteBuilder(context,
///                 mymodel: setting.arguments);
///              });
///              return route;
